package com.xh.easyretry.common;

public class XHRetryConstants {

    //===================retry strategy===================
    public static String SYNC_STRATEGY = "sync";
    public static String ASYNC_STRATEGY = "async";
    public static String MQ_ASYNC_STRATEGY = "mq";
    //===================retry strategy===================

    //=================delay time strategy================
    public static String FIXED_DELAY_STRATEGY = "fixed";
    public static String RANDOM_DELAY_STRATEGY = "random";
    public static String GRADIENT_DELAY_STRATEGY = "gradient";
    public static String IMMEDIATE_STRATEGY = "immediate";
    public static String EXPONENTIAL_STRATEGY = "exponential";
    public static String DEFAULT_DELAY_STRATEGY = IMMEDIATE_STRATEGY;

    public static final Long DEFAULT_EXPONENTIAL_INTERVAL = 100L;
    public static final Long DEFAULT_EXPONENTIAL_MAX_INTERVAL = 30000L;
    public static final Double DEFAULT_EXPONENTIAL_MULTIPLIER = 1.5;
    //=================delay time strategy================
    public static Integer DEFAULT_START_RETRY_COUNT = 1;
}
